package com.aos.erp.message.service;

import com.aos.erp.common.bean.PageBean;
import com.aos.erp.common.exception.BizException;
import com.aos.erp.message.dto.MessageTemplateDTO;
import com.aos.erp.message.dto.MessageTemplateItemDTO;
import com.aos.erp.message.model.MessageTemplateInfo;
import com.aos.erp.message.model.vo.MTConditionVo;
import com.aos.erp.message.model.vo.MessageTemplateVo;

import java.util.List;

public interface MessageTemplateService {
    /**
     * 保存模板
     * @param dataInfo
     * @throws BizException
     */
    void saveTemplate(MessageTemplateVo dataInfo) throws BizException;

    /**
     * 删除模板
     * @param dataId
     * @throws BizException
     */
    void deleteTemplate(String dataId) throws BizException;

    /**
     * 更新模板
     * @param dataInfo
     * @throws BizException
     */
    void updateTemplate(MessageTemplateVo dataInfo) throws BizException;

    /**
     * 模板详情
     * @param dataId
     */
    MessageTemplateDTO getTemplateDetail(long dataId);

    /**
     * 根据模板编号查询模板信息
     * @param mtCode
     * @return
     */
    MessageTemplateInfo getTemplateDetailByCode(String mtCode);

    /**
     * 分页查询模板列表
     * @param conditionVO
     * @return
     */
    PageBean<MessageTemplateItemDTO> findByPage(MTConditionVo conditionVO);

    /**
     * 查询所有模板列表
     * @param dsId
     * @return
     */
    List<MessageTemplateInfo> findAll(Long dsId);

}
